14 research outputs found

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Designing and Implementing Resilient IoT Applications in the Fog: A Smart Home Use Case

    Get PDF
    International audienceFog computing extends the capacities of the cloud to the edge of the network, near the physical world, so that Internet of Things (IoT) applications can benefit from properties such as short delays, real-time and privacy. Devices in the Fog-IoT environment are usually unstable and prone to failures. In this context, the consequences of failures may impact the physical world and can, therefore, be critical. This paper reports a framework for end-to-end resilience of Fog-IoT applications. The framework was implemented and experimented on a smart home testbed

    Combining Ontology Alignment with Model Driven Engineering Techniques for Home Devices Interoperability

    Get PDF
    International audienceUbiquitous Systems are expected in the near future to have much more impact on our daily tasks thanks to advances in embedded systems, "Plug-n-Play" protocols and software architectures. Such protocols target home devices and enables automatic discovery and interaction among them. Consequently, smart applications are shaping the home into a smart one by orchestrating devices in an elegant manner. Currently, several protocols coexist in smart homes but interactions between devices cannot be put into action unless devices are supporting the same protocol. Furthermore, smart applications must know in advance names of services and devices to interact with them. However, such names are semantically equivalent but syntactically different needing translation mechanisms. In order to reduce human efforts for achieving interoperability, we introduce an approach combining ontology alignment techniques with those of Model Driven Engineering domain to reach a dynamic service adaptation

    Resilience of Stateful IoT Applications in a Dynamic Fog Environment

    Get PDF
    International audienceFog computing provides computing, storage and communication resources at the edge of the network, near the physical world. Subsequently , end devices nearing the physical world can have interesting properties such as short delays, responsiveness, optimized communications and privacy. However, these end devices have low stability and are prone to failures. There is consequently a need for failure management protocols for IoT applications in the Fog. The design of such solutions is complex due to the specificities of the environment, i.e., (i) dynamic infrastructure where entities join and leave without synchronization, (ii) high heterogeneity in terms of functions, communication models, network, processing and storage capabilities, and, (iii) cyber-physical interactions which introduce non-deterministic and physical world's space and time dependent events. This paper presents a fault tolerance approach taking into account these three characteristics of the Fog-IoT environment. Fault tolerance is achieved by saving the state of the application in an uncoordinated way. When a failure is detected, notifications are propagated to limit the impact of failures and dynamically reconfig-ure the application. Data stored during the state saving process are used for recovery, taking into account consistency with respect to the physical world. The approach was validated through practical experiments on a smart home platform

    Observations et analyses quantitatives multi-niveaux d'applications à objets réparties

    No full text
    Nowadays computing systems are increasingly powerful and distributed. Programming methods, such as multithreading or object oriented programming, are applied to limit the ever-growing complexity of these systems. What are the benefits of using such methods ? Are they able to best leverage available resources ? To answer that question, we studied the execution via a "debugging performance" method. The problematic goal is to achieve a qualitative and quantitative analysis of the consumed execution resources The hypothesis is that the analysis of the interactions between objects, via the multi-layer observations, provides enough information to reach our goal. This is the reason why, we obtain information from the application and system layers of abstraction, without modifying the original code of the application or the operation system kernel. We created a multi-layer observation infrastructure for distributed Java applications. This have been used to study a multimedia Java server. We proceeded to a algorithmic and a system resource consumption. The observations from the application layer are obtained from the JVMPI. The average cost of such observations is 3 microseconds for each measure. module in a Linux kernel. Therefore, systern calls used to write and read from a socket are re-routed to include our own code for observation. We are then able to reconstruct the remote interactions between Java objects and to obtain indexes on system resource consumption. The average cost of such observations is 2 microsecondsLes moyens de traitement de l'information auxquels nous avons accès sont de plus en plus puissants, de plus en plus répartis. Des modèles de programmation, tels que la multiprogrammation légère ou la programmation par objets, leur sont appliqués afin de juguler l'accroissement de la complexité qui en découle. Mais qu'apportent ces modèles ? La mise en oeuvre de ces modèles permet-elle d'employer au "mieux" les ressources disponibles ? Pour répondre à cette question, nous nous plaçons dans une démarche de type "évaluation de performances". La problématique porte sur la reconstruction post-mortem, à partir de mesures, de la dynamique d'une exécution afin de réaliser une analyse qualitative et quantitative des ressources d'exécution consommées. L'hypothèse posée est que l'analyse des interactions entre objets, effectuée à différents niveaux d'abstraction, procure les informations suffisantes à nos études. Pour cela, nous réalisons des observations au niveau applicatif el système et cela sans modification du code exécutable original de l'application ou du noyau du système d'exploitation. Une infrastructure d'observation multi-niveaux a été réalisée dans le cadre d'applications Java réparties. Elle a été appliquée à l'étude d'un serveur multimédia Java. Une analyse de l'algorithmique et des consommations de ressources systèmes a été menée. Pour cela, les observations du niveau applicatif sont effectuées au travers de la JVMPI. Le coût moyen d'observation est de 3µs par point de mesure. Celles du niveau système sont obtenues par insertion à chaud d'un module dans un noyau Linux. De cette façon, les appels systèmes attachés aux écritures et aux lectures dans une "socket" sont déroutés. II nous est ainsi possible de reconstruire les interactions distantes entre objets Java et d'obtenir des indices de consommation des ressources systèmes. Le coût moyen d'observation est ici de 2µs par point de mesure

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    No full text
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Dynamic Service Adaptation for Plug and Play Device Interoperability

    No full text
    International audienceAdvances in embedded systems, plug-n-play protocols and software architectures bring the ubiquitous system vision to the near future. Home devices supporting such protocols can be automatically discovered, configured and invoked for a given task. Smart applications are shaping the home into a smart one by orchestrating devices in an elegant manner. Several protocols coexist in smart homes but interactions between devices cannot be put into action unless devices are supporting the same protocol. Furthermore, smart applications must know in advance services names hosted by devices to interact with. However, such names are often semantically equivalent but syntactically different among devices, needing translation mechanisms. In this work we present how ontology alignment techniques assisted with pattern detection rules are used to find such correspondences between equivalent devices. Once the mapping is validated we apply a code generation technique to reach a dynamic service adaptation. We validated the approach on an HP Printer

    CBay : Extending auction algorithm for component placement in the Internet of machines

    No full text
    International audienceThe Internet of machines is a system composed of interconnected nodes that inter-operate to run applications. Such applications can be implemented by the encapsulation and the cooperation of several software entities called components. These components are distributed on nodes with various resources (memory, computation capacity, bandwidth, battery charge, etc). Placing components on nodes is a crucial step for both the application and the target machines. The choice of placement actually influences their performance. Hence, the deployment has to take into account the needs and the functional/non functional properties along with the system's available resources and its overall performance. Many algorithms have been proposed, including one based on a principle of auction: DecAp, which allows components' dynamic redeployment to better meet the system's evolution. We present in this article an extension of DecAp by adding the management of available resources (memory, bandwidth and computing capacity) to the redeployment strategy

    On the Fly Proxy Generation for Home Devices Interoperability

    No full text
    International audienceDifferent plug and play protocols coexist in home networks and each protocol defines its own profiles, data semantics and networking layers, thus interoperability between different devices cannot be applied. We take advantage of the device description annunciation to automatically generate ontologies representing the device, then we apply semi automatic alignment heuristics to find correspondences between equivalent entities. Once the alignment is validated and updated by a human, it is used with predefined code templates to automatically generate software modules "proxies" to hide the device heterogeneity. We validated our approach on a real DPWS printer
    corecore